3a92d6de8310bd9e0a2692358e23a922bb6397e3,strutsclipse-plugin/src/com/amashchenko/eclipse/strutsclipse/StrutsXmlParser.java,StrutsXmlParser,getTagRegion,#IDocument#number#,50
Before Change
tagRegion.getOffset());
elementValuePrefix = document.get(
tagRegion.getOffset(),
offset - tagRegion.getOffset());
// get start tag of current tag body
After Change
String elementValuePrefix = null;
// check if offset is between start and end tags
int bodyOffset = -1;
int bodyLength = -1;
if (IDocument.DEFAULT_CONTENT_TYPE.equals(tagRegion.getType())) {
ITypedRegion nextRegion = partitioner.getPartition(tagRegion
.getOffset() + tagRegion.getLength());
if (CLOSE_TAG_TOKEN.equals(nextRegion.getType())) {
bodyOffset = tagRegion.getOffset();
bodyLength = tagRegion.getLength();
}
} else if (CLOSE_TAG_TOKEN.equals(tagRegion.getType())
&& tagRegion.getOffset() == offset) {
ITypedRegion prevRegion = partitioner.getPartition(tagRegion
.getOffset() - 1);
if (IDocument.DEFAULT_CONTENT_TYPE.equals(prevRegion.getType())) {
bodyOffset = prevRegion.getOffset();
bodyLength = prevRegion.getLength();
} else {
bodyOffset = tagRegion.getOffset();
}
}
if (bodyOffset != -1) {
if (bodyLength == -1) {
currentElement = new ElementRegion(null, "",
tagRegion.getOffset());